import Main from '@/components/main'
import parentView from '@/components/parent-view'

/**
 * iview-admin中meta除了原生参数外可配置的参数:
 * meta: {
 *  title: { String|Number|Function }
 *         显示在侧边栏、面包屑和标签栏的文字
 *         使用'{{ 多语言字段 }}'形式结合多语言使用，例子看多语言的路由配置;
 *         可以传入一个回调函数，参数是当前路由对象，例子看动态路由和带参路由
 *  hideInBread: (false) 设为true后此级路由将不会出现在面包屑中，示例看QQ群路由配置
 *  hideInMenu: (false) 设为true后在左侧菜单不会显示该页面选项
 *  notCache: (false) 设为true后页面在切换标签后不会缓存，如果需要缓存，无需设置这个字段，而且需要设置页面组件name属性和路由配置的name一致
 *  access: (null) 可访问该页面的权限数组，当前路由设置的权限会影响子路由
 *  icon: (-) 该页面在左侧菜单、面包屑和标签导航处显示的图标，如果是自定义图标，需要在图标名称前加下划线'_'
 *  beforeCloseName: (-) 设置该字段，则在关闭当前tab页时会去'@/router/before-close.js'里寻找该字段名对应的方法，作为关闭前的钩子函数
 * }
 */

export default [
  {
    path: '/login',
    name: 'login',
    meta: {
      title: 'Login - 登录',
      hideInMenu: true
    },
    component: () => import('@/view/login/login.vue')
  },
  {
    path: '/',
    name: '_home',
    redirect: '/home',
    component: Main,
    meta: {
      hideInMenu: true,
      notCache: true
    },
    children: [
      {
        path: '/home',
        name: 'home',
        meta: {
          hideInMenu: true,
          title: '首页',
          notCache: true,
          icon: 'md-home'
        },
        component: () => import('@/view/single-page/home')
      }
    ]
  },
  {
    path: '',
    name: 'doc',
    meta: {
      title: '文档',
      href: 'https://lison16.github.io/iview-admin-doc/#/',
      icon: 'ios-book'
    }
  },
	{
		path: '/user',
		name: '用户列表',
		meta: {
			hideInBread: true
		},
		component: Main,
		children: [
			{
				path: 'userinfo',
				name: 'userinfo',
				meta: {
					icon: 'md-person',
					title: '用户列表'
				},
				component: () => import('@/view/user/userInfo.vue')
			},
			{
				path: 'userSupervisor',
				name: 'userSupervisor',
				meta: {
					icon: 'md-person',
					title: '用户信息',
					hideInMenu: true
				},
				component: () => import('@/view/user/userSupervisor.vue')
			}
		]
	},
	{
		path: '/supervisor',
		name: '监理列表',
		meta: {
			hideInBread: true
		},
		component: Main,
		children: [
			{
				path: '/supervisorList',
				name: 'supervisorList',
				meta: {
					icon: 'md-build',
					title: '监理列表'
				},
				component: () => import('@/view/supervisor/supervisorList.vue')
			},
			{
				path: '/siteList',
				name: 'siteList',
				meta: {
					icon: 'md-build',
					title: '工地列表',
					hideInMenu: true
				},
				component: () => import('@/view/supervisor/siteList.vue')
			},
			{
				path: 'addSupervisor',
				name: 'addSupervisor',
				meta: {
					icon: 'md-build',
					title: '工地列表',
					hideInMenu: true
				},
				component: () => import('@/view/supervisor/addSupervisorList.vue')
			}
		]
	},
	{
		path: '/case',
		name: '案例列表',
		meta: {
			hideInBread: true
		},
		component: Main,
		children: [
			{
				path: '/caseList',
				name: 'caseList',
				meta: {
					icon: 'md-pie',
					title: '案例列表'
				},
				component: () => import('@/view/case/caseList.vue')
			},
			{
				path: 'caseDetails',
				name: 'caseDetails',
				meta: {
					icon: 'md-person',
					title: '案例详情',
					hideInMenu: true,
				},
				component: () => import('@/view/case/caseDetails.vue')
			},
			{
				path: 'itemDetails',
				name: 'itemDetails',
				meta: {
					title: '项目详情',
					hideInMenu: true
				},
				component: () => import('@/view/case/itemDetails.vue')
			},
			{
				path: 'details',
				name: 'details',
				meta: {
					title: '详情',
					hideInMenu: true
				},
				component: () => import('@/view/case/details.vue')
			}
		]
	},
	{
		path: '/circle',
		name: '装修圈列表',
		meta: {
			hideInBread: true
		},
		component: Main,
		children: [
			{
				path: '/circleList',
				name: 'circleList',
				meta: {
					icon: 'ios-text',
					title: '装修圈列表'
				},
				component: () => import('@/view/circle/circleList.vue')
			},
			{
				path: 'circleDetail',
				name: 'circleDetail',
				meta: {
					icon: 'md-person',
					title: '详情',
					hideInMenu: true,
					notCache: true
				},
				component: () => import('@/view/circle/circleDetail.vue')
			},
			{
				path: 'label',
				name: 'label',
				meta: {
					icon: 'md-person',
					title: '标签管理',
					hideInMenu: true
				},
				component: () => import('@/view/circle/label.vue')
			}
		]
	},
	{
		path: '/activity',
		name: '活动列表',
		component: Main,
		children: [
			{
				path: 'activityList',
				name: 'activityList',
				meta: {
					icon: 'ios-american-football',
					title: '活动列表'
				},
				component: () => import('@/view/activity/activityList.vue')
			},
			{
				path: 'teamList',
				name: 'teamList',
				meta: {
					icon: 'ios-american-football',
					title: '人员名单',
					hideInMenu: true
				},
				component: () => import('@/view/activity/teamList.vue')
			}
		]
	},
	{
		path: '/teacherApply',
		name: '监理师申请表',
		component: Main,
		children: [
			{
				path: 'applyList',
				name: 'applyList',
				meta: {
					icon: 'ios-create',
					title: '监理师申请表'
				},
				component: () => import('@/view/teacherApply/applyList.vue')
			}
		]
	},
  {
    path: '/401',
    name: 'error_401',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/401.vue')
  },
  {
    path: '/500',
    name: 'error_500',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/500.vue')
  },
  {
    path: '*',
    name: 'error_404',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/404.vue')
  }
]
